package com.ruoyi.common.core.domain.entity.app;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

@Data
@TableName("app_user_login")
public class AppUserLoginDB {

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 跨平台唯一标识(微信UnionID)
     */
    private String unionid;

    /**
     * 公众号OpenID
     */
    private String mpOpenid;

    private String miniOpenid;

    private Integer loginNumber;

    /**
     * 用户昵称
     */
    private String userNick = "";

    /**
     * 头像URL
     */
    private String avatarUrl;

    /**
     * 性别：0未知 1男 2女
     */
    private Integer gender = 0;

    /**
     * 用户手机号
     */
    private String phone;

    /**
     * 备注
     */
    private String remark = "";

    /**
     * 最后的登录时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastLoginTime;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    /**
     * 创建人ID
     */
    private Long createdBy = 0L;

    /**
     * 修改时间
     */
    private Date updatedAt;

    /**
     * 修改人ID
     */
    private Long updatedBy = 0L;

    /**
     * 是否启用(0:未启用, 1:启用中)
     */
    private Integer isActive = 1;

    /**
     * 是否删除(0:未删除, 1:已删除)
     */
    @TableLogic
    private Integer isDeleted = 0;

    /**
     * 删除时间（数据库默认 '1970-01-01 00:00:00'，Java 中可为 null 或有效时间）
     */
    private Date deletedAt;

    /**
     * 租户ID
     */
    private Long tenantId;
}
